2c8cb23cb709b50ab3ac2948ec954e979d1dd91b,jobqueue/src/test/java/com/birbit/android/jobqueue/test/jobqueue/JobParamsTest.java,JobParamsTest,assertParamsUnderstood,#,19

Before Change


                j5.getRequiresNetworkUntilNs(), is(17000000L));

        DummyJob j6 = new DummyJob(new Params(1).requireUnmeteredNetworkWithTimeout(15));
        mockTimer.incrementMs(2);
        j6.seal(mockTimer);
        assertThat("requireNetwork should be set from UNMETERED if it is not specified",
                j6.getRequiresNetworkUntilNs(), is(19000000L));
        assertThat("network unmetered requirement with timeout should be understood properly",
                j6.getRequiresUnmeteredNetworkUntilNs(), is(19000000L));

        DummyJob j7 = new DummyJob(new Params(1).requireUnmeteredNetworkWithTimeout(15)
                .requireNetworkWithTimeout(20));
        mockTimer.incrementMs(2);
        j7.seal(mockTimer);
        assertThat("requireNetwork should be kept when both are specified",
                j7.getRequiresNetworkUntilNs(), is(26000000L));
        assertThat("network unmetered requirement with timeout should be understood properly",
                j7.getRequiresUnmeteredNetworkUntilNs(), is(21000000L));

        DummyJob j8 = new DummyJob(new Params(1).requireUnmeteredNetworkWithTimeout(15)
                .requireNetwork());
        j8.seal(mockTimer);
        assertThat("requireNetwork should be kept when both are specified",
                j8.getRequiresNetworkUntilNs(), is(Params.FOREVER));
        assertThat("network unmetered requirement with timeout should be understood properly",

After Change


    @Test
    public void assertParamsUnderstood() {
        MockTimer mockTimer = new MockTimer();
        JobHolder j1 = JobQueueTestBase.createNewJobHolder(new Params(1).requireNetwork(), mockTimer);
        assertThat("require network param should be understood properly", j1.requiresNetwork(mockTimer.nanoTime()), equalTo(true));
        assertThat("require network param should be understood properly",
                j1.getRequiresNetworkUntilNs(), equalTo(Params.FOREVER));
        assertThat("require unmetered network param should be understood properly",
                j1.getRequiresUnmeteredNetworkUntilNs(), equalTo(Params.NEVER));
        JobHolder j2 = JobQueueTestBase.createNewJobHolder(new Params(1).groupBy("blah"), mockTimer);
        assertThat("group param should be understood properly", j2.getGroupId(), equalTo("blah"));
        assertThat("require network param should be understood properly",
                j2.getRequiresNetworkUntilNs(), equalTo(Params.NEVER));
        assertThat("require unmetered network param should be understood properly",
                j2.getRequiresUnmeteredNetworkUntilNs(), equalTo(Params.NEVER));
        JobHolder j3 = JobQueueTestBase.createNewJobHolder(new Params(1).persist(), mockTimer);
        assertThat("persist param should be understood properly", j3.persistent, equalTo(true));
        JobHolder j4 = JobQueueTestBase.createNewJobHolder(new Params(1).setPersistent(false).setRequiresNetwork(false).setGroupId(null).setSingleId(null), mockTimer);
        assertThat("persist param should be understood properly", j4.persistent, equalTo(false));
        assertThat("require network param should be understood properly", j4.requiresNetwork(mockTimer.nanoTime()), equalTo(false));
        assertThat("require unmetered network param should be understood properly",
                j4.requiresUnmeteredNetwork(mockTimer.nanoTime()), equalTo(false));
        assertThat("group param should be understood properly", j4.groupId, nullValue());
        assertThat("single param should be understood properly", j4.getSingleInstanceId(), nullValue());
        mockTimer.incrementMs(2);
        JobHolder j5 = JobQueueTestBase.createNewJobHolder(new Params(1).requireNetworkWithTimeout(15), mockTimer);

        assertThat("network requirement with timeout should be understood properly",
                j5.getRequiresNetworkUntilNs(), is(17000000L));
        assertThat("network unmetered requirement with timeout should be understood properly",
                j5.getRequiresNetworkUntilNs(), is(17000000L));
        mockTimer.incrementMs(2);
        JobHolder j6 = JobQueueTestBase.createNewJobHolder(new Params(1).requireUnmeteredNetworkWithTimeout(15), mockTimer);
        assertThat("requireNetwork should be set from UNMETERED if it is not specified",
                j6.getRequiresNetworkUntilNs(), is(19000000L));
        assertThat("network unmetered requirement with timeout should be understood properly",
                j6.getRequiresUnmeteredNetworkUntilNs(), is(19000000L));
        mockTimer.incrementMs(2);
        JobHolder j7 = JobQueueTestBase.createNewJobHolder(new Params(1).requireUnmeteredNetworkWithTimeout(15)
                .requireNetworkWithTimeout(20), mockTimer);
        assertThat("requireNetwork should be kept when both are specified",
                j7.getRequiresNetworkUntilNs(), is(26000000L));
        assertThat("network unmetered requirement with timeout should be understood properly",